From 18f60060b0cb113812b2447e0f8629fbdfaf6248 Mon Sep 17 00:00:00 2001 From: "Karl O. Pinc" Date: Thu, 25 Oct 2018 11:24:58 -0500 Subject: [PATCH] Initial regression test --- tests/views/test_upload.py | 50 +++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/tests/views/test_upload.py b/tests/views/test_upload.py index 388c4f7..42eebc2 100644 --- a/tests/views/test_upload.py +++ b/tests/views/test_upload.py @@ -19,8 +19,52 @@ # Karl O. Pinc -from pgwui_upload import upload +from pgwui_upload.views import upload -def test_example_func(): - assert upload.example_func() == 1 +# Helper classes + +class MockUploadEngine(): + def __init__(self, run_result): + self.run_result = run_result + + def run(self): + return self.run_result + + +class MockTableUploadHandler(): + def __init__(self, *args): + pass + + +# Tests + +# upload_view() + +def test_upload_view_db_not_changed(monkeypatch): + '''When the db did not change nothing logs''' + + # Have the pyramid.view.view_config decorator do nothing + monkeypatch.setattr(upload, 'view_config', + lambda **kwargs: (lambda func: func)) + + mock_info_called = False + + def mock_info(*args): + nonlocal mock_info_called + mock_info_called = True + + monkeypatch.setattr(upload, 'log', mock_info) + + response = {'db_changed': False} + + def upload_engine(*args): + return MockUploadEngine(response) + + monkeypatch.setattr(upload, 'UploadEngine', upload_engine) + monkeypatch.setattr(upload, 'TableUploadHandler', MockTableUploadHandler) + + result = upload.upload_view(None) + + assert result == response + assert mock_info_called is False -- 2.34.1